1. Field of the Invention
The present invention relates generally to computer-implemented methods for generating process models, and in particular, to a method, apparatus, and article of manufacture for generating process models from workflow logs.
2. Description of Related Art
Organizations typically prescribe how business processes have to be performed, particularly when activities are complex and involve many people. A business process specifies the way in which the resources of an enterprise are used. The performance of an enterprise depends on the quality and the accuracy of the business process. Thus techniques to manage and support business processes are an active research area, as described in the publications F. Casati, S. Ceri, B. Pernici and G. Pozzi, "Workflow Evolution", Proceedings of ER '96, Springer Verlag, Cottbus, Germany, October 1996, and F. Leymann and W. Altenhuber, "Managing Business Processes as an Information Resource", IBM Systems Journal, February 1994, both of which are incorporated by reference herein.
In particular, a significant amount of research has been done in the area of modeling and supporting the execution of business processes. The model generally used is the workflow model, as described in the publication D. Hollinsworth, "The Workflow Reference Model", Workflow Management Coalition, TC00-1003, December 1994, which is incorporated by reference herein. Workflow systems assume that a process can be divided in small, unitary actions, called activities. To perform the process, one must perform the set (or perhaps a subset) of the activities that comprise it. In addition, there may be dependencies between different activities.
The main approach used in workflow systems is to model the process as a directed graph. The graph vertices represent individual activities and the edges represent dependencies between them. In other words, if activity A has to be executed before activity B, an edge appears in the graph from A to B. In practice, certain executions of the process may include a given activity and others may not. Each edge A.fwdarw.B is, therefore, annotated with a Boolean function that determines whether the control flows from A to B.
Current workflow systems assume that a model of the process is available and the main task of the system is to insure that all the activities are performed in the right order and the process terminates successfully, as described in the publication F. Leymann and W. Altenhuber, "Managing Business Processes as an Information Resource", IBM Systems Journal, February 1994, which is incorporated by reference herein. The user is required to provide the process model. Constructing the desired process model from an unstructured model of process execution is quite difficult, expensive and in most cases require the use of an expert, as described in the publications F. Casati, S. Ceri, B. Pemici and G. Pozzi, "Workflow Evolution", Proceedings of ER '96, Springer Verlag, Cottbus, Germany, October 1996 and A. L. Scherr, "A New Approach to Business Processes", IBM Systems Journal, Vol. 32, No 1, 1993, both of which are incorporated by reference herein.
Thus, there is a need in the art for new approaches to the problem of model construction. More specifically, there is a need in the art for a method that generates a graph model of a process given a log of unstructured executions of the process, wherein the resulting graph represents the control flow of the business process. These and other needs are met by the present invention.